#ifndef HAL_ADC_H
#define HAL_ADC_H

#define UBUS_PORT           (GpioPortA)
#define VALVE_CURRENT_PORT  (GpioPortA)
#define HEATER_CURRENT_PORT (GpioPortA)
#define KEY_SIGNAL_PORT     (GpioPortA)
#define MODE_BUTTON_PORT    (GpioPortA)
#define DERIVER_BUTTON_PORT (GpioPortA)
#define TEMPERATURE_PORT    (GpioPortA)

#define UBUS_PIN            (GpioPin0)
#define VALVE_CURRENT_PIN   (GpioPin1)
#define HEATER_CURRENT_PIN  (GpioPin2)
#define KEY_SIGNAL_PIN      (GpioPin3)
#define MODE_BUTTON_PIN     (GpioPin4)
#define DERIVER_BUTTON_PIN  (GpioPin5)
#define TEMPERATURE_PIN     (GpioPin6)

extern volatile unsigned short adc_data[7];

extern void hal_adc_init(void);
extern float convert_data_to_voltage(unsigned short data);

#endif // HAL_ADC_H
